<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> <!-- 适配 移动设备 -->
    <title>用户注册倒计时</title>
    <style>
        .版心居中 {
            width: 400px; /* 要想有居中效果,必须有 宽度 */
            margin: 10px auto; /* 版心居中 */
        }
    </style>
</head>
<body>
<div class="版心居中">
    <label for="用户注册协议"></label>
    <textarea name="" id="用户注册协议" cols="50" rows="10">
        用户注册协议
        欢迎注册成为京东用户！在您注册过程中，您需要完成我们的注册流程并通过点击同意的形式在线签署以下协议，请您务必仔细阅读、充分理解协议中的条款内容后再点击同意（尤其是以粗体或下划线标识的条款，因为这些条款可能会明确您应履行的义务或对您的权利有所限制）。
        【请您注意】如果您不同意以下协议全部或任何条款约定，请您停止注册。您停止注册后将仅可以浏览我们的商品信息但无法享受我们的产品或服务。如您按照注册流程提示填写信息，阅读并点击同意上述协议且完成全部注册流程后，即表示您已充分阅读、理解并接受协议的全部内容，并表明您同意我们可以依据协议内容来处理您的个人信息，并同意我们将您的订单信息共享给为完成此订单所必须的第三方合作方（详情查看
    </textarea>
    <button class="按钮" disabled="disabled">我已经阅读用户协议(5)</button> <!-- disabled 禁用按钮 -->
    <!--    按钮 初始状态是禁用的, 直到秒数完毕. 按钮启用-->
</div>

<script>
    // 这个函数,作用是通过 正则表达式 获取字符串遇到的第一个数字
    function 获取字符串第一个数字(字符串) {
        let 正则 = new RegExp("[0-9]+");
        // console.log(正则)
        return 字符串.match(正则); // 返回的是一个数字
    }




    // 获取DOM元素
    let 按钮 = document.querySelector('.版心居中 .按钮')

    // 获取定时器编号, 并且使用定时器. 关闭定时器写在函数里
    let 定时器_编号 = setInterval(阅读用户协议_倒计时, 1000)

    let 计时数 = 获取字符串第一个数字(按钮.innerHTML) // 这里获取标签里那个,初始计时数
    console.log(计时数)
    console.log(按钮.innerHTML)

    // 声明一个函数,执行 定时器里的操作
    function 阅读用户协议_倒计时() {
        计时数-- // 时数,倒计
        按钮.innerHTML = `我已经阅读用户协议(${计时数})` // 修改标签里的文本
        // 条件判断,满足关闭 定时器
        if (计时数 === 0) {
            clearInterval(定时器_编号) // 关闭定时器
            按钮.disabled = false // 按钮 禁用解除
            按钮.innerHTML = `同意`// 修改标签里的文本
        }
    }
</script>
</body>
</html>